package com.zeng.user.mybatis.annotation;

import org.apache.ibatis.io.DefaultVFS;
import org.apache.ibatis.io.VFS;
import org.apache.ibatis.type.TypeHandler;
import org.springframework.context.annotation.Import;

import java.lang.annotation.*;

/**
 * @author zyb
 * @date 2021-05-09 21:41
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Import(MybatisBeanDefinitionRegister.class)
public @interface EnableMybatis {

    String value() default "sqlSessionFactory";

    String configLocation() default "";

    String configurationRef() default "";

    String[] mapperLocations() default "";

    String dataSourceRef() default "";

    String environment() default "";

    boolean failFast() default false;

    String[] pluginsRef() default "";

    Class<? extends TypeHandler<?>>[] typeHandlers() default {};

    String typeHandlersPackage() default "";

    Class<? extends VFS> vfs() default DefaultVFS.class;
}
